草庐IT

sql - NoSQL 的用例

全部标签

PHP, PDO SQL server, 返回数据中去掉前导0

我正在研究PHP+SlimFramework。我必须将MySQL迁移到SQLServer。SELECT语句的返回结果有问题。这是我的示例数据,╔════╦═══════╦════════════╦════════════╦═══════════════════════╗║id║item_id║lat║lng║timestamp║╠════╬═══════╬════════════╬════════════╬═══════════════════════╣║1║1║51.42743450║-0.72776696║2017-07-0509:54:49.000║║2║1║51.5966550

带有 SQL 结果的 PHP 内存限制

我遇到了一个本来应该不难解决的问题,但我却做不到。这是场景:我想从SQL语句中获取结果到PHP数组中,看起来很简单吧?问题是它给我关于memory_limit的错误(fatalerror:内存不足(已分配408944640)(已尝试分配805306376字节))。这是我的代码,它使用的语句提供的结果较少(我需要使用的语句包含+/-4000条记录)。$connect=@newmysqli($host,$db_user,$db_password,$db_name);if($connect->connect_errno!=0){echo"Error:".$connect->connect_e

php - 如何在 PHP 中解密由 SQL Server 的 EncryptByPassPhrase() 加密的字符串?

我有一个加密的字符串及其key,它是使用SQLServer使用“EncryptByPassPhrase”创建的,我如何在PHP中解密它?我已经阅读了“EncryptByPassPhrase”的文档,其中指出这是128位长度的三重DES加密。我尝试了PHP的3DES解密,但它没有返回预期的输出。MSSQL中的加密是用declare@encryptvarbinary(200)select@encrypt=EncryptByPassPhrase('key','taskseq=10000&amt=200.5')select@encrypt我在PHP中解密如下:functiondecryptEC

php - 为什么我可以连接到本地 SQL Server Express 而不能从 PHP 连接到远程 SQL Server?

这是使用Windows身份验证时的标准代码:setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);}catch(PDOException$e){echo$e;die("ErrorconnectingtoSQLServer");}echo"ConnectedtoSQLServer\n";?>以上内容适用于连接到本地服务器(SQLServer2008ExpressEdition),但不适用于连接到网络上的服务器(SQLServerStandardEdition)。错误信息是:exception'PDOException'withmes

php - 从工作单元测试用例构建简单测试套件的麻烦

我已经开始对我的PHP程序使用单元测试,并且认为Simpletest与其他任何地方一样适合深入研究。我将Simpletest文件添加到我的测试服务器,并在我的自定义PDO类上运行了以下测试:这一切都非常顺利。我尝试构建一个测试套件(到目前为止)仅涉及该测试文件,如下所示:addFile('inc_sql_test.php');}}这崩溃了,我得到了以下读数:Warning:include_once(inc_sql_test.php)[function.include-once]:failedtoopenstream:NosuchfileordirectoryinE:\xampp\htd

php - 超过 100 万条记录的表的 SQL 查询被服务器中断?

我在Magento中创建了一个网站,其中包含大约1120种产品。当我选择内置的Magento菜单选项:报告->产品->最多查看,然后输入一个日期范围并选择“显示依据”=[天]时,我收到超时错误。但是SAME报告,但其中“显示依据”=[月]和“显示依据”=[年],运行完成并生成报告。经查,[Report_Event]表有超过100万条记录。当我尝试在PHPMyAdmin中运行SAME查询时,我收到消息:“SQL查询被服务器中断”。有人遇到过这个错误吗?是否有需要应用的解决方法或设置? 最佳答案 尝试增加服务器或脚本的max_execu

php - 在 T-SQL 中反序列化 PHP 序列化数据

我正在尝试从Magento订单中提取礼品卡代码。其他一些代码使用MagentoAPI从Magento检索XML形式的订单信息,并将XML插入到MSSQLServer记录中。使用T-SQL我可以使用XML函数来解析从MagentoAPI检索到的XML并获得我需要的几乎所有东西,但是实际礼品卡代码存储的唯一地方是gift_cards字段,它恰好是一个php序列化字符串。例子:a:1:{i:0;a:5:{s:1:"i";s:1:"1";s:1:"c";s:12:"00XCY8S3ZXCU";s:1:"a";d:119;s:2:"ba";d:119;s:10:"authorized";d:11

PHP:使用动态端口分配连接到 MS SQL Server

我正在尝试使用PHP浏览客户的MicrosoftSQL服务器数据库,但端口1433已关闭。仔细研究后,我发现MSSQL可以在动态端口分配模式下运行,这意味着它会在第一次执行时选择一个随机监听端口,并且在整个启动过程中可能会保持不变。我知道我可以找到当前端口,但由于可能不是总是并且我想避免再次搜索它,有什么方法可以远程发现要连接到的端口?根据我的搜索了解,这项工作通常由SQLBrowser(.exe?)完成,但如何在Linux上执行此操作?解决方案更新虽然@Chris的回答是正确的,但我遗漏了一个简单但必不可少的部分:在每次更改odbc.ini时,您都需要运行:odbcinst-i-s-

php - 在 Ubuntu 12.04 LTS 上从 CakePHP 3 连接到 SQL Server

我的设置在Windows上运行,但我最近切换到Ubuntu12.04LTS,但现在无法连接。当我加载需要与SQLServer通信的页面时,出现此错误:DatabasedriverCake\Database\Driver\SqlservercannotbeusedduetoamissingPHPextensionorunmetdependency很明显,CakePHP找不到SQLServerPDO驱动。我找到了许多旧教程来帮助我,但我选择了最新的(我绝对希望能够在我的CakePHP网站上使用PDO)。ThisisthetutorialIfollowed.使用终端,我可以用这个命令访问数据

php - 如何在 PHPUnit 测试用例中使用服务器变量?

我正在使用PHPUnit测试用例测试模块。所有的东西都工作正常,但是当我使用$_SERVER['REMOTE_ADDR']时,它会出现fatalerror并停止执行。CategoryControllerTest.phpboot();$this->container=static::$kernel->getContainer();$this->em=static::$kernel->getContainer()->get('doctrine')->getManager();}publicfunctiontestCategory(){$ip_address=$_SERVER['REMOTE